package com.chen.hotel.Service;

import com.chen.hotel.domain.Room;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

/**
 * 房间Service
 */
public interface RoomService {

    /**
     * 创建房间
     */
    public Room create(Room room);

    /**
     * 更新房间信息
     */
    public Room update(Room room);

    /**
     * 删除房间
     */
    public void deleteById(Integer id);

    /**
     * 获取一个房间信息
     */
    public Room getRoomById(Integer id);

    /**
     * 获取所有房间列表
     * @param request
     * @return
     */
    public Page<Room> getAllRoom(Pageable request);

    /**
     * 获取某种类型的房间列表
     */
    public Page<Room> getRoomByType(Pageable request, Integer typeId);

    /**
     * 获取某一楼层的房间列表
     */
    public Page<Room> getRoomByFloor(Pageable request, Integer floor);

    /**
     * 获取当前不同状态下的房间列表
     */
    public Page<Room> getRoomByStatus(Pageable request, Integer status);

}
